package com.mrjy.common.entity;

import com.mrjy.common.util.ExcelField;

import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Timestamp;
import java.util.Arrays;
import java.util.List;

public class UserInfo extends BaseEntity implements Serializable {
	
	private static final long serialVersionUID = 6466689699728263570L;
	
	/**
	 * 角色id		
	 */
	@ExcelField(title="序号")
	private Integer roleId;
	/**
     * 用户名称
     */
	@ExcelField(title="用户名")
    private String userName;
    /**
     * 手机号码
     */
    @ExcelField(title="手机号")
    private String mobilePhone;
    /**
     * 电子邮件
     */
    @ExcelField(title="邮箱")
    private String email;
    /**
     * 性别
     */
    @ExcelField(title="性别")
    private String sex;
    //地区(市+区/县)
    @ExcelField(title="地区")
    private String location;
    /*用户描述*/
    @ExcelField(title="简介")
    private String userDesc;
    /**
     * 注册日期
     */
    @ExcelField(title="注册时间")
    private Long registerDate;
    
    //账号
    private String loginCode;
    

    /**
     * 身份证
     */
    private String idCard;

    /**
     * 生日
     */
    private String birthday;
    /**
     * 电话号码
     */
    private String phone;
    /**
     * qq
     */
    private String qq;

    /**
     * 
     */
    private String registerDateString;
    /**
     * 教师标签
     */
    private Integer lableTypeId;
    /**
     * 省份
     */
    private String province;
    /**
     * 城市
     */
    private String city;
    /**
     * 县/地区
     */
    private String county;
    /**
     * 街道
     */
    private String street;
    /**
     * 密码
     */
    private byte[] password;
    /*图片名称*/
    private String picName;
    /*密码路径*/
    private String passwordSrc;
    /*登录信息*/
    private String loginMessage;
    
    private String roleCode;
    /*角色姓名*/
    private String roleName;
    /*角色类型*/
    private Integer roleType; // 0:管理员   1:普通用户(roleId :2,3,4)

    /*学校ID*/
    private Integer schoolId;
    /*学校名称*/
    private String schoolName;
    /*学校姓名简称*/
    private String schoolNamejc;
    /*服务站ID*/
    private Integer stationId;
    /*服务站名称*/
    private String stationName;
    /*服务站省份*/
    private String stationProvince;
    /*服务站城市*/
    private String stationCity;
    /*服务站县道/街区*/
    private String stationCounty;
    /*开始时间*/
	private String startTime;
	 /*结束时间*/
    private String endTime;
    /*开始日期*/
    private Long startDate;
    /*结束日期*/
    private Long endDate;
    /*班级ID*/
    private Integer classId;
    /*推荐码*/
    private String recommendCode;
    /*推荐讲师ID*/
    private Integer recommenderId;
    /*推荐讲师姓名*/
    private String recommenderName;
    /*标签名 */
    private String lableName;
    /*会话*/
    private String tocken;
    /*微信绑定*/
    private String weixinOpenid;
    /*金额*/
    private Float money;
    /*支付方法*/
    private String paymentMethod;
    /*成员列表*/
    private List<UserMemberInfo> memberList;
    
    private String sessionId;

    private String sessionIdPC;
    /*分享员等级*/
    private Integer shareLevel;
    /**
     * 职业
     */
    private String occupation;
    /**
     * 银行账号
     */
    private String bankAccount;
    /**
     * 银行类型
     */
    private String bankType;
    /**
     * 获取分类标签
     */
    private List<Integer> typeIds;
    /**
     * 年级阶段id
     */
    private Integer stageId;
    /**
     * 年级阶段名称 （不保存数据库）    
     */
    private String stageName;
    /**
     * 结算联系方式
     */
    private String settlementPhone;
    /**
     * 银行信息修改时间
     */
    private Long modiferTime;
    /*头像图片路径*/
    private String headImgUrl;
    
    private Integer partnerId;//合作方id

    /*绑定微信unionid*/
    private String weixinUnionid;

    /*用户登录的方式*/
    private String login_way;

     /*明师 视频播放总量*/
     private Integer sum_play_times;

    /*明师 微课总量*/
    private Integer count_classes;

    /*名师 权限*/
    private Integer recordAuthority;


    /*名师 价格*/
    private BigDecimal askedPrice;

    /*获赞总数*/
    private int totalGoodNum;

    /*银行卡号*/
    private String bankCard;
    
    /**
     * 讲师搜索类型（不存数据库）
     */
    private String sortType;
    
    
    /*银行卡号持有者*/
    private String bankCardOwner;

    /*银行卡修改时间*/
    private Timestamp cardModifyDate;

    /*银行卡修改时间是否在允许修改*/
    private Integer cardModifyAllow;

    /*银行卡修改时间*/
    private String cardModifyDateStr;
    /*点赞排序*/
    private Integer goodSort;
    /*用户所属学校id*/
    private Integer belongSchoolId;
    //用户所属学校视频文件目录
    private String cataid;
    //用户所属学校音频存储文件路径
    private String catatree;
    
    public String getCatatree() {
		return catatree;
	}

	public void setCatatree(String catatree) {
		this.catatree = catatree;
	}

	public String getCataid() {
		return cataid;
	}

	public void setCataid(String cataid) {
		this.cataid = cataid;
	}

	/*用户在学校的报名类型（0：购买报名；1：福卡激活）*/
    private Integer registType;
    
    /**
     * 心愿（幸福频道使用）
     */
    private String wish ;
    
    private Integer integralBalance; //积分余额
    
    //用户对应的推广者id
    private Integer distributorId;  
    
    private Integer totalClickCount; //讲师视频总观看量

    private Integer viewTime; //学习型 当天坚持看过的时间

    private Integer rownum; //排名
    /**
     * 小程序openid
     */
    private String miniOpenid ; 
    /**
     * 小程序会话key ，用于校验用户数据完整性
     */
    private String sessionKey ;
    
    private String miniDesc ;
    private Double viewProgress;

    private Integer relateCount;

    private String familyPic;

    private Integer isTeacher;//是否是老师

    private Integer userId;//用户ID
    
    private Integer userSessionId;//用户本地存储的用户id

    public int getTotalGoodNum() {
        return totalGoodNum;
    }

    public void setTotalGoodNum(int totalGoodNum) {
        this.totalGoodNum = totalGoodNum;
    }

    public UserInfo() {
        super();
		// TODO Auto-generated constructor stub
	}

	public String getTocken() {
		return tocken;
	}

	public void setTocken(String tocken) {
		this.tocken = tocken;
	}



	public Integer getSchoolId() {
		return schoolId;
	}



	public void setSchoolId(Integer schoolId) {
		this.schoolId = schoolId;
	}
	
	public String getSchoolName() {
		return schoolName;
	}
	

	 public String getSchoolNamejc() {
		return schoolNamejc;
	}

	public void setSchoolNamejc(String schoolNamejc) {
		this.schoolNamejc = schoolNamejc;
	}

	public Integer getStationId() {
		return stationId;
	}

	public void setStationId(Integer stationId) {
		this.stationId = stationId;
	}

	public String getStationName() {
		return stationName;
	}

	public void setStationName(String stationName) {
		this.stationName = stationName;
	}

	public String getStationProvince() {
		return stationProvince;
	}

	public void setStationProvince(String stationProvince) {
		this.stationProvince = stationProvince;
	}

	public String getStationCity() {
		return stationCity;
	}

	public void setStationCity(String stationCity) {
		this.stationCity = stationCity;
	}

	public String getStationCounty() {
		return stationCounty;
	}

	public void setStationCounty(String stationCounty) {
		this.stationCounty = stationCounty;
	}

	public void setSchoolName(String schoolName) {
		this.schoolName = schoolName;
	}

	public String getRoleCode() {
		return roleCode;
	}

	public void setRoleCode(String roleCode) {
		this.roleCode = roleCode;
	}

	public Integer getRoleType() {
		return roleType;
	}



	public void setRoleType(Integer roleType) {
		this.roleType = roleType;
	}



	public String getRoleName() {
		return roleName;
	}

	public void setRoleName(String roleName) {
		this.roleName = roleName;
	}

	public Integer getRoleId() {
		return roleId;
	}

	public void setRoleId(Integer roleId) {
		this.roleId = roleId;
	}

	public String getLoginCode() {
		return loginCode;
	}

	public void setLoginCode(String loginCode) {
		this.loginCode = loginCode;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}
	
	

	public String getIdCard() {
		return idCard;
	}



	public void setIdCard(String idCard) {
		this.idCard = idCard;
	}



	public String getMobilePhone() {
		return mobilePhone;
	}

	public void setMobilePhone(String mobilePhone) {
		this.mobilePhone = mobilePhone;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	
	public String getBirthday() {
		return birthday;
	}

	public void setBirthday(String birthday) {
		this.birthday = birthday;
	}



	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getQq() {
		return qq;
	}

	public void setQq(String qq) {
		this.qq = qq;
	}

	public Long getRegisterDate() {
		return registerDate;
	}

	public void setRegisterDate(Long registerDate) {
		this.registerDate = registerDate;
	}	

	public String getRegisterDateString() {
		return registerDateString;
	}

	public void setRegisterDateString(String registerDateString) {
		this.registerDateString = registerDateString;
	}
	
	

	public Integer getLableTypeId() {
		return lableTypeId;
	}



	public void setLableTypeId(Integer lableTypeId) {
		this.lableTypeId = lableTypeId;
	}



	public String getProvince() {
		return province;
	}

	public void setProvince(String province) {
		this.province = province;
	}

	public String getCity() {
		return city;
	}

	public void setCity(String city) {
		this.city = city;
	}

	public String getCounty() {
		return county;
	}

	public void setCounty(String county) {
		this.county = county;
	}

	public String getStreet() {
		return street;
	}

	public String getPasswordSrc() {
		return passwordSrc;
	}

	public void setPasswordSrc(String passwordSrc) {
		this.passwordSrc = passwordSrc;
	}

	public void setStreet(String street) {
		this.street = street;
	}

	public byte[] getPassword() {
		return password;
	}

	public void setPassword(byte[] password) {
		this.password = password;
	}

	public String getLoginMessage() {
		return loginMessage;
	}

	public void setLoginMessage(String loginMessage) {
		this.loginMessage = loginMessage;
	}

	public String getPicName() {
		return picName;
	}

	public void setPicName(String picName) {
		this.picName = picName;
	}	


	public String getUserDesc() {
		return userDesc;
	}



	public void setUserDesc(String userDesc) {
		this.userDesc = userDesc;
	}



	public String getStartTime() {
		return startTime;
	}



	public void setStartTime(String startTime) {
		this.startTime = startTime;
	}



	public String getEndTime() {
		return endTime;
	}



	public void setEndTime(String endTime) {
		this.endTime = endTime;
	}



	public Long getStartDate() {
		return startDate;
	}



	public void setStartDate(Long startDate) {
		this.startDate = startDate;
	}



	public Long getEndDate() {
		return endDate;
	}


	public void setEndDate(Long endDate) {
		this.endDate = endDate;
	}


	public Integer getClassId() {
		return classId;
	}


	public void setClassId(Integer classId) {
		this.classId = classId;
	}


	public String getRecommendCode() {
		return recommendCode;
	}

	public void setRecommendCode(String recommendCode) {
		this.recommendCode = recommendCode;
	}



	public Integer getRecommenderId() {
		return recommenderId;
	}



	public void setRecommenderId(Integer recommenderId) {
		this.recommenderId = recommenderId;
	}



	public String getRecommenderName() {
		return recommenderName;
	}



	public void setRecommenderName(String recommenderName) {
		this.recommenderName = recommenderName;
	}

	


	public String getLableName() {
		return lableName;
	}



	public void setLableName(String lableName) {
		this.lableName = lableName;
	}
		


	public String getWeixinOpenid() {
		return weixinOpenid;
	}



	public void setWeixinOpenid(String weixinOpenid) {
		this.weixinOpenid = weixinOpenid;
	}
	

	public List<UserMemberInfo> getMemberList() {
		return memberList;
	}

	public void setMemberList(List<UserMemberInfo> memberList) {
		this.memberList = memberList;
	}
	
	

	public Float getMoney() {
		return money;
	}

	public void setMoney(Float money) {
		this.money = money;
	}

	public String getPaymentMethod() {
		return paymentMethod;
	}

	public void setPaymentMethod(String paymentMethod) {
		this.paymentMethod = paymentMethod;
	}
		

	public String getSessionId() {
		return sessionId;
	}

	public void setSessionId(String sessionId) {
		this.sessionId = sessionId;
	}
	
	

	public Integer getShareLevel() {
		return shareLevel;
	}

	public void setShareLevel(Integer shareLevel) {
		this.shareLevel = shareLevel;
	}	

	public String getOccupation() {
		return occupation;
	}

	public void setOccupation(String occupation) {
		this.occupation = occupation;
	}

	public String getBankAccount() {
		return bankAccount;
	}

	public void setBankAccount(String bankAccount) {
		this.bankAccount = bankAccount;
	}

	public String getBankType() {
		return bankType;
	}

	public void setBankType(String bankType) {
		this.bankType = bankType;
	}
	public List<Integer> getTypeIds() {
		return typeIds;
	}

	public void setTypeIds(List<Integer> typeIds) {
		this.typeIds = typeIds;
	}

	public Integer getStageId() {
		return stageId;
	}

	public void setStageId(Integer stageId) {
		this.stageId = stageId;
	}

	public String getStageName() {
		return stageName;
	}

	public void setStageName(String stageName) {
		this.stageName = stageName;
	}
	

	public String getSettlementPhone() {
		return settlementPhone;
	}

	public void setSettlementPhone(String settlementPhone) {
		this.settlementPhone = settlementPhone;
	}

	public Long getModiferTime() {
		return modiferTime;
	}

	public void setModiferTime(Long modiferTime) {
		this.modiferTime = modiferTime;
	}

	public String getHeadImgUrl() {
		return headImgUrl;
	}

	public void setHeadImgUrl(String headImgUrl) {
		this.headImgUrl = headImgUrl;
	}

	public Integer getPartnerId() {
		return partnerId;
	}

	public void setPartnerId(Integer partnerId) {
		this.partnerId = partnerId;
	}

	@Override
	public String toString() {
		return "UserInfo [roleId=" + roleId + ", loginCode=" + loginCode
				+ ", userName=" + userName + ", email=" + email + ", idCard="
				+ idCard + ", mobilePhone=" + mobilePhone + ", sex=" + sex
				+ ", birthday=" + birthday + ", phone=" + phone + ", qq=" + qq
				+ ", registerDate=" + registerDate + ", registerDateString="
				+ registerDateString + ", lableTypeId=" + lableTypeId
				+ ", province=" + province + ", city=" + city + ", county="
				+ county + ", street=" + street + ", password="
				+ Arrays.toString(password) + ", picName=" + picName
				+ ", passwordSrc=" + passwordSrc + ", loginMessage="
				+ loginMessage + ", roleCode=" + roleCode + ", roleName="
				+ roleName + ", roleType=" + roleType + ", userDesc="
				+ userDesc + ", schoolId=" + schoolId + ", schoolName="
				+ schoolName + ", schoolNamejc=" + schoolNamejc
				+ ", stationId=" + stationId + ", stationName=" + stationName
				+ ", stationProvince=" + stationProvince + ", stationCity="
				+ stationCity + ", stationCounty=" + stationCounty
				+ ", startTime=" + startTime + ", endTime=" + endTime
				+ ", startDate=" + startDate + ", endDate=" + endDate
				+ ", classId=" + classId + ", recommendCode=" + recommendCode
				+ ", recommenderId=" + recommenderId + ", recommenderName="
				+ recommenderName + ", lableName=" + lableName + "]";
	}


    public String getWeixinUnionid() {
        return weixinUnionid;
    }

    public void setWeixinUnionid(String weixinUnionid) {
        this.weixinUnionid = weixinUnionid;
    }

    public String getLogin_way() {
        return login_way;
    }

    public void setLogin_way(String login_way) {
        this.login_way = login_way;
    }

    public String getSessionIdPC() {
        return sessionIdPC;
    }

    public void setSessionIdPC(String sessionIdPC) {
        this.sessionIdPC = sessionIdPC;
    }

    public Integer getSum_play_times() {
        return sum_play_times;
    }

    public void setSum_play_times(Integer sum_play_times) {
        this.sum_play_times = sum_play_times;
    }

    public Integer getCount_classes() {
        return count_classes;
    }

    public void setCount_classes(Integer count_classes) {
        this.count_classes = count_classes;
    }

    public Integer getRecordAuthority() {
        return recordAuthority;
    }

    public void setRecordAuthority(Integer recordAuthority) {
        this.recordAuthority = recordAuthority;
    }

    public BigDecimal getAskedPrice() {
        return askedPrice;
    }

    public void setAskedPrice(BigDecimal askedPrice) {
        this.askedPrice = askedPrice;
    }

	public String getLocation() {
		return location;
	}

	public void setLocation(String location) {
		this.location = location;
	}

    public String getBankCard() {
        return bankCard;
    }

    public void setBankCard(String bankCard) {
        this.bankCard = bankCard;
    }

	public String getSortType() {
		return sortType;
	}

	public void setSortType(String sortType) {
		this.sortType = sortType;
	}
    

    public String getBankCardOwner() {
        return bankCardOwner;
    }

    public void setBankCardOwner(String bankCardOwner) {
        this.bankCardOwner = bankCardOwner;
    }

    public Timestamp getCardModifyDate() {
        return cardModifyDate;
    }

    public void setCardModifyDate(Timestamp cardModifyDate) {
        this.cardModifyDate = cardModifyDate;
    }

    public Integer getCardModifyAllow() {
        return cardModifyAllow;
    }

    public void setCardModifyAllow(Integer cardModifyAllow) {
        this.cardModifyAllow = cardModifyAllow;
    }

    public String getCardModifyDateStr() {
        return cardModifyDateStr;
    }

    public void setCardModifyDateStr(String cardModifyDateStr) {
        this.cardModifyDateStr = cardModifyDateStr;
    }

	public Integer getGoodSort() {
		return goodSort;
	}

	public void setGoodSort(Integer goodSort) {
		this.goodSort = goodSort;
	}
    
	public Integer getBelongSchoolId() {
		return belongSchoolId;
	}

	public void setBelongSchoolId(Integer belongSchoolId) {
		this.belongSchoolId = belongSchoolId;
	}

	public Integer getRegistType() {
		return registType;
	}

	public void setRegistType(Integer registType) {
		this.registType = registType;
	}

	public String getWish() {
		return wish;
	}

	public void setWish(String wish) {
		this.wish = wish;
	}

	public Integer getIntegralBalance() {
		return integralBalance;
	}

	public void setIntegralBalance(Integer integralBalance) {
		this.integralBalance = integralBalance;
	}

	public Integer getDistributorId() {
		return distributorId;
	}

	public void setDistributorId(Integer distributorId) {
		this.distributorId = distributorId;
	}

	public Integer getTotalClickCount() {
		return totalClickCount;
	}

	public void setTotalClickCount(Integer totalClickCount) {
		this.totalClickCount = totalClickCount;
	}

    public Integer getRownum() {
        return rownum;
    }

    public void setRownum(Integer rownum) {
        this.rownum = rownum;
    }

    public Integer getViewTime() {
        return viewTime;
    }

    public void setViewTime(Integer viewTime) {
        this.viewTime = viewTime;
    }

	public String getMiniOpenid() {
		return miniOpenid;
	}

	public void setMiniOpenid(String miniOpenid) {
		this.miniOpenid = miniOpenid;
	}

	public String getSessionKey() {
		return sessionKey;
	}

	public void setSessionKey(String sessionKey) {
		this.sessionKey = sessionKey;
	}

	public String getMiniDesc() {
		return miniDesc;
	}

	public void setMiniDesc(String miniDesc) {
		this.miniDesc = miniDesc;
	}

    public Double getViewProgress() {
        return viewProgress;
    }

    public void setViewProgress(Double viewProgress) {
        this.viewProgress = viewProgress;
    }

    public Integer getRelateCount() {
        return relateCount;
    }

    public void setRelateCount(Integer relateCount) {
        this.relateCount = relateCount;
    }

    public String getFamilyPic() {
        return familyPic;
    }

    public void setFamilyPic(String familyPic) {
        this.familyPic = familyPic;
    }

    public Integer getIsTeacher() {
        return isTeacher;
    }

    public void setIsTeacher(Integer isTeacher) {
        this.isTeacher = isTeacher;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

	public Integer getUserSessionId() {
		return userSessionId;
	}

	public void setUserSessionId(Integer userSessionId) {
		this.userSessionId = userSessionId;
	}
    
}